"""
@author: yqx
@file: 密码复杂度验证.py
@time: 2024/6/2 17:33
"""
import os

# 编写函数实现:密码复杂度
# 1.长度8-18  不合格
# 2.只使用了一种字符(字母/数字/特殊字符)    弱
# 3.使用了两种字符(字母/数字/特使字符)     中
# 4.使用了三种字符(字母/数字/特殊字符)     强

passwdtest =""
passwdtest=input(passwdtest)
def password_authenticationpProtocol(passwd):
    """
    计算密码的复杂度
    :param passwd:密码
    :return: 密度复杂度
    """
    if len(passwd)<8 or len(passwd)>18:
        return 0
    else:
        figure=0
        letter=0
        special_characters=0
        for i in passwd:
            if i>"0" and i<"9":
               figure=1
            elif (i>="A" and i<"Z") or(i>="a" and i<="z"):
                letter=1
            else:
                special_characters=1
        sums=figure+letter+special_characters
        return sums

def testprint(sumprint):
    """
    根据对应密码复杂度进行输出
    :param sumprint: 密码复杂度
    :return: 输出密码复杂程度
    """
    if sumprint==3:
        print("密码强")
    elif sumprint==2:
        print("密码中")
    elif sumprint==1:
        print("密码弱")
    else:
        print("密码长度不符")
testprint(password_authenticationpProtocol(passwdtest))

# 类型注解.文档注释,函数变量命名....
